/**
 * Description:
 * Class Name:GenericAndArray2
 * Date:2022/3/25 21:32
 *
 * @author LTisme
 * @version JAVA17
 */
package 疯狂Java讲义.第9章_泛型._9_6_泛型与数组;

import java.util.ArrayList;
import java.util.List;

public class GenericAndArray2 {
    public static void main(String[] args) {
        // 下面代码编译时不再有“[unchecked]未经检查的转换”警告了
        List<?>[] lsa = new ArrayList<?>[10];
        // 将lsa向上转型为Object[]类型的变量
        Object[] oa = lsa;
        List<Integer> li = new ArrayList<>();
        li.add(3);
        oa[1] = li;
        Object target = lsa[1].get(0);
        if (target instanceof String){
            // 下面代码安全了
            var s = (String) target;
            System.out.println("yes");
        }
        else {
            System.out.println("no");
        }
    }
}
